1. Field of the Invention
The present invention relates to processors and in particular to processors for chip card applications, on which secret data, like for example keys or identification data, is stored.
2. Description of Related Art
Chip cards usually include a chip, which in turn includes both a CPU and also periphery elements, like for example a crypto-co-processor, a working memory, a read-only-memory, etc. Typical chips for chip cards further include a non-volatile memory as a read-only memory. Non-volatile memories (NVMs) are used to store secret data for the device, which the non-volatile memory is associated with. Such secret data is for example secret keys, which are unique for the chip and thus for the chip card on which the chip is placed. Such chip cards for example identify users for mobile telephones in which they are integrated. Alternatively, the chip card itself may be used for a personal identification, for example in the form of a payment card, a health card, a bankcard, etc.
Within such chips, during delivery or even in manufacturing, respectively, non-volatile memories existing on the chip are for example programmed in the form of an ROM. The programming of ROMs usually takes place using an ROM mask, which is one of the last masks for chip card manufacturing. Alternatively, also EPROMs or EEPROMs may be used as non-volatile memories, which do not have to be programmed by an individual mask in chip manufacturing but may be programmed electronically, for example by applying a very high voltage to bring charge onto an isolated gate of a transistor via tunneling.
Such non-volatile memories for storing device-unique secret data, like for example a PIN of a carrier of the card or a secret key for a card for an asymmetric encoding/signature method are undesirable in several regards. On the one hand, manufacturing the same is expensive. Further, programming of those memories is very cost and time consuming. In typical ROMs, which are programmed using an ROM mask during manufacturing, flexibility is especially low as the programming data for the read-only memory already has to be known when manufacturing the cards.
The use of EPROMs or EEPROMs is more flexible, however. On the other hand, in card programming relatively high voltages have to be applied in order to bring charges to isolated gates of the memory transistors. In particular with low-cost applications, the risk is especially high that due to the high voltages to be applied, which are substantially higher than any operating voltages for the chip card, neighboring circuit parts may be affected or even destroyed in programming. In order to prevent this, the circuits have to be implemented especially voltage-resistant although typical operating voltages for the chip cards are substantially below the voltage level, which is required to program the non-volatile memory.
It is a further disadvantage, that non-volatile memories loose their memory state over time. In order to recognize when such a non-volatile memory may not be read-out correctly any more, thus again checking or testing circuits, respectively, have to be provided on the card. These checking circuits are then operable to signalize to a carrier of the card that the card will soon not be trusted any more and either has to be replaced or at least refreshed.
Non-volatile memories are further, as they are arranged in arrays and comprise a regular structure, a target easy to be found for an attacker, who unauthorizedly wants to extract data stored in the memory.
Thus, in future processors or processing secret data and in particular in future chips for chip cards including such processors for processing secret data attempts are made not to refrain from non-volatile memories for storing secret data.